<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Pepr3D: pepr3d::MainApplication Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="pepr3d_icon.svg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Pepr3D
   &#160;<span id="projectnumber">v1.0</span>
   </div>
   <div id="projectbrief">Pepr3D is a 3D graphics editor designed for FDM printing</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpepr3d_1_1_main_application.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#pri-static-attribs">Static Private Attributes</a> &#124;
<a href="classpepr3d_1_1_main_application-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">pepr3d::MainApplication Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>The main Cinder-based application, represents a window, handles events, thread pool, active tools, geometry, etc.  
 <a href="classpepr3d_1_1_main_application.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_main_application_8h_source.html">MainApplication.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for pepr3d::MainApplication:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classpepr3d_1_1_main_application.png" alt=""/>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a99845ed56d376246abd66dd2ac04e25b"><td class="memItemLeft" align="right" valign="top"><a id="a99845ed56d376246abd66dd2ac04e25b"></a>
using&#160;</td><td class="memItemRight" valign="bottom"><b>ToolsVector</b> = std::vector&lt; std::unique_ptr&lt; <a class="el" href="classpepr3d_1_1_tool.html">Tool</a> &gt; &gt;</td></tr>
<tr class="separator:a99845ed56d376246abd66dd2ac04e25b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a5b6116d8f876a0ffe82ac50a79699a80"><td class="memItemLeft" align="right" valign="top"><a id="a5b6116d8f876a0ffe82ac50a79699a80"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a5b6116d8f876a0ffe82ac50a79699a80">setup</a> () override</td></tr>
<tr class="memdesc:a5b6116d8f876a0ffe82ac50a79699a80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Perform any application setup after the Renderer has been initialized. <br /></td></tr>
<tr class="separator:a5b6116d8f876a0ffe82ac50a79699a80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeaff9b43639879dc3f318c97ae28a78"><td class="memItemLeft" align="right" valign="top"><a id="aaeaff9b43639879dc3f318c97ae28a78"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#aaeaff9b43639879dc3f318c97ae28a78">update</a> () override</td></tr>
<tr class="memdesc:aaeaff9b43639879dc3f318c97ae28a78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Perform any once-per-loop computation. <br /></td></tr>
<tr class="separator:aaeaff9b43639879dc3f318c97ae28a78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc78d4bf492874de9bfd6f38fdc0a9d1"><td class="memItemLeft" align="right" valign="top"><a id="abc78d4bf492874de9bfd6f38fdc0a9d1"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#abc78d4bf492874de9bfd6f38fdc0a9d1">draw</a> () override</td></tr>
<tr class="memdesc:abc78d4bf492874de9bfd6f38fdc0a9d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Perform any rendering once-per-loop or in response to OS-prompted requests for refreshes. <br /></td></tr>
<tr class="separator:abc78d4bf492874de9bfd6f38fdc0a9d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa65c16b49a329894f4c11e8ec170ff77"><td class="memItemLeft" align="right" valign="top"><a id="aa65c16b49a329894f4c11e8ec170ff77"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#aa65c16b49a329894f4c11e8ec170ff77">resize</a> () override</td></tr>
<tr class="memdesc:aa65c16b49a329894f4c11e8ec170ff77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive window resize events. <br /></td></tr>
<tr class="separator:aa65c16b49a329894f4c11e8ec170ff77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f78d23316feefe9fa47d175945a9539"><td class="memItemLeft" align="right" valign="top"><a id="a6f78d23316feefe9fa47d175945a9539"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a6f78d23316feefe9fa47d175945a9539">mouseDown</a> (MouseEvent event) override</td></tr>
<tr class="memdesc:a6f78d23316feefe9fa47d175945a9539"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive mouse-down events. <br /></td></tr>
<tr class="separator:a6f78d23316feefe9fa47d175945a9539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37906240fbe8298da4cee85823beb9d3"><td class="memItemLeft" align="right" valign="top"><a id="a37906240fbe8298da4cee85823beb9d3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a37906240fbe8298da4cee85823beb9d3">mouseDrag</a> (MouseEvent event) override</td></tr>
<tr class="memdesc:a37906240fbe8298da4cee85823beb9d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive mouse-drag events. <br /></td></tr>
<tr class="separator:a37906240fbe8298da4cee85823beb9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbb75130b69f0da2f12f87322e976fd5"><td class="memItemLeft" align="right" valign="top"><a id="acbb75130b69f0da2f12f87322e976fd5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#acbb75130b69f0da2f12f87322e976fd5">mouseUp</a> (MouseEvent event) override</td></tr>
<tr class="memdesc:acbb75130b69f0da2f12f87322e976fd5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive mouse-up events. <br /></td></tr>
<tr class="separator:acbb75130b69f0da2f12f87322e976fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80d67681ea10a5ed21bc8c5004f1ad94"><td class="memItemLeft" align="right" valign="top"><a id="a80d67681ea10a5ed21bc8c5004f1ad94"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a80d67681ea10a5ed21bc8c5004f1ad94">mouseWheel</a> (MouseEvent event) override</td></tr>
<tr class="memdesc:a80d67681ea10a5ed21bc8c5004f1ad94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive mouse-wheel events. <br /></td></tr>
<tr class="separator:a80d67681ea10a5ed21bc8c5004f1ad94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe0f99dcc618f5820a9f947bde3fd14b"><td class="memItemLeft" align="right" valign="top"><a id="afe0f99dcc618f5820a9f947bde3fd14b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#afe0f99dcc618f5820a9f947bde3fd14b">mouseMove</a> (MouseEvent event) override</td></tr>
<tr class="memdesc:afe0f99dcc618f5820a9f947bde3fd14b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive mouse-move events. <br /></td></tr>
<tr class="separator:afe0f99dcc618f5820a9f947bde3fd14b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5328b13b9f1d06c7897f503e32ddfcc7"><td class="memItemLeft" align="right" valign="top"><a id="a5328b13b9f1d06c7897f503e32ddfcc7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a5328b13b9f1d06c7897f503e32ddfcc7">fileDrop</a> (FileDropEvent event) override</td></tr>
<tr class="memdesc:a5328b13b9f1d06c7897f503e32ddfcc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive file-drop events. <br /></td></tr>
<tr class="separator:a5328b13b9f1d06c7897f503e32ddfcc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba1caad067c409097504d7a4d2ce52ee"><td class="memItemLeft" align="right" valign="top"><a id="aba1caad067c409097504d7a4d2ce52ee"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#aba1caad067c409097504d7a4d2ce52ee">keyDown</a> (KeyEvent event) override</td></tr>
<tr class="memdesc:aba1caad067c409097504d7a4d2ce52ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Receive key-down events. <br /></td></tr>
<tr class="separator:aba1caad067c409097504d7a4d2ce52ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a729e5a9d504e19d4d9ded03b36389e72"><td class="memItemLeft" align="right" valign="top"><a id="a729e5a9d504e19d4d9ded03b36389e72"></a>
<a class="el" href="classpepr3d_1_1_toolbar.html">Toolbar</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a729e5a9d504e19d4d9ded03b36389e72">getToolbar</a> ()</td></tr>
<tr class="memdesc:a729e5a9d504e19d4d9ded03b36389e72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the <a class="el" href="classpepr3d_1_1_toolbar.html" title="A top part of the user interface that shows a File menu, Undo, Redo, and all tools.">Toolbar</a>. <br /></td></tr>
<tr class="separator:a729e5a9d504e19d4d9ded03b36389e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cdfc3de57eb4d504a1c03ddd6089670"><td class="memItemLeft" align="right" valign="top"><a id="a0cdfc3de57eb4d504a1c03ddd6089670"></a>
<a class="el" href="classpepr3d_1_1_side_pane.html">SidePane</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a0cdfc3de57eb4d504a1c03ddd6089670">getSidePane</a> ()</td></tr>
<tr class="memdesc:a0cdfc3de57eb4d504a1c03ddd6089670"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the <a class="el" href="classpepr3d_1_1_side_pane.html" title="Right side of the user interface that displays options of the currently selected tool.">SidePane</a>. <br /></td></tr>
<tr class="separator:a0cdfc3de57eb4d504a1c03ddd6089670"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1e84ebe5d446b18eb977b325a8b9afc"><td class="memItemLeft" align="right" valign="top"><a id="ab1e84ebe5d446b18eb977b325a8b9afc"></a>
<a class="el" href="classpepr3d_1_1_model_view.html">ModelView</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ab1e84ebe5d446b18eb977b325a8b9afc">getModelView</a> ()</td></tr>
<tr class="memdesc:ab1e84ebe5d446b18eb977b325a8b9afc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the <a class="el" href="classpepr3d_1_1_model_view.html" title="The main part of the user interface, shows the geometry to the user.">ModelView</a>. <br /></td></tr>
<tr class="separator:ab1e84ebe5d446b18eb977b325a8b9afc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abaccd25f162b70a1d56eef7dfa5f6d35"><td class="memItemLeft" align="right" valign="top"><a id="abaccd25f162b70a1d56eef7dfa5f6d35"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#abaccd25f162b70a1d56eef7dfa5f6d35">isDemoWindowShown</a> ()</td></tr>
<tr class="memdesc:abaccd25f162b70a1d56eef7dfa5f6d35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the ImGui demo window is shown. <br /></td></tr>
<tr class="separator:abaccd25f162b70a1d56eef7dfa5f6d35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5472dc8c46954026bd65c72ef3de3e9"><td class="memItemLeft" align="right" valign="top"><a id="ac5472dc8c46954026bd65c72ef3de3e9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ac5472dc8c46954026bd65c72ef3de3e9">showDemoWindow</a> (bool show=true)</td></tr>
<tr class="memdesc:ac5472dc8c46954026bd65c72ef3de3e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set if the ImGui demo window should be shown. <br /></td></tr>
<tr class="separator:ac5472dc8c46954026bd65c72ef3de3e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91ce9fd9f93a11384734e98e72173609"><td class="memItemLeft" align="right" valign="top"><a id="a91ce9fd9f93a11384734e98e72173609"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a91ce9fd9f93a11384734e98e72173609">openFile</a> (const std::string &amp;path)</td></tr>
<tr class="memdesc:a91ce9fd9f93a11384734e98e72173609"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to open a file in the specified path and use it as the new <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a>. <br /></td></tr>
<tr class="separator:a91ce9fd9f93a11384734e98e72173609"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e7e06ee55cd65c2bdc30ec2742f50ab"><td class="memItemLeft" align="right" valign="top"><a id="a0e7e06ee55cd65c2bdc30ec2742f50ab"></a>
ToolsVector::iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a0e7e06ee55cd65c2bdc30ec2742f50ab">getToolsBegin</a> ()</td></tr>
<tr class="memdesc:a0e7e06ee55cd65c2bdc30ec2742f50ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the begin iterator of the current vector of <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a>. <br /></td></tr>
<tr class="separator:a0e7e06ee55cd65c2bdc30ec2742f50ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71cb88d088358a0121a080f728126eef"><td class="memItemLeft" align="right" valign="top"><a id="a71cb88d088358a0121a080f728126eef"></a>
ToolsVector::iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a71cb88d088358a0121a080f728126eef">getToolsEnd</a> ()</td></tr>
<tr class="memdesc:a71cb88d088358a0121a080f728126eef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the end iterator of the current vector of <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a>. <br /></td></tr>
<tr class="separator:a71cb88d088358a0121a080f728126eef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d69a67e452592afc6e7e2f6b7e6b9a0"><td class="memItemLeft" align="right" valign="top"><a id="a8d69a67e452592afc6e7e2f6b7e6b9a0"></a>
ToolsVector::iterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a8d69a67e452592afc6e7e2f6b7e6b9a0">getCurrentToolIterator</a> ()</td></tr>
<tr class="memdesc:a8d69a67e452592afc6e7e2f6b7e6b9a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the iterator of the currently selected <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a>. <br /></td></tr>
<tr class="separator:a8d69a67e452592afc6e7e2f6b7e6b9a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69aa1c6492d7ec045dcbcdb25b8d9912"><td class="memItemLeft" align="right" valign="top"><a id="a69aa1c6492d7ec045dcbcdb25b8d9912"></a>
<a class="el" href="classpepr3d_1_1_tool.html">Tool</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a69aa1c6492d7ec045dcbcdb25b8d9912">getCurrentTool</a> ()</td></tr>
<tr class="memdesc:a69aa1c6492d7ec045dcbcdb25b8d9912"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer of the currently selected <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a>. <br /></td></tr>
<tr class="separator:a69aa1c6492d7ec045dcbcdb25b8d9912"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5ea5ce0d25e8ff5c996eb33956ab9a8"><td class="memItemLeft" align="right" valign="top"><a id="ac5ea5ce0d25e8ff5c996eb33956ab9a8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ac5ea5ce0d25e8ff5c996eb33956ab9a8">setCurrentToolIterator</a> (ToolsVector::iterator tool)</td></tr>
<tr class="memdesc:ac5ea5ce0d25e8ff5c996eb33956ab9a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the iterator of the <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a> you want to be selected. <br /></td></tr>
<tr class="separator:ac5ea5ce0d25e8ff5c996eb33956ab9a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a429927346ea0766c39f0b713888f80fd"><td class="memTemplParams" colspan="2"><a id="a429927346ea0766c39f0b713888f80fd"></a>
template&lt;typename Tool &gt; </td></tr>
<tr class="memitem:a429927346ea0766c39f0b713888f80fd"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a429927346ea0766c39f0b713888f80fd">setCurrentTool</a> ()</td></tr>
<tr class="memdesc:a429927346ea0766c39f0b713888f80fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the <a class="el" href="classpepr3d_1_1_tool.html" title="A base class of all tools that the user can select and manipulate the Geometry and application with t...">Tool</a> (in template) as selected. Usage: <a class="el" href="classpepr3d_1_1_main_application.html#a429927346ea0766c39f0b713888f80fd" title="Set the Tool (in template) as selected. Usage: setCurrentTool&lt;PaintBucket&gt;()">setCurrentTool&lt;PaintBucket&gt;()</a> <br /></td></tr>
<tr class="separator:a429927346ea0766c39f0b713888f80fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae47b18590297b63e6e0e5ae01fc027d5"><td class="memItemLeft" align="right" valign="top"><a id="ae47b18590297b63e6e0e5ae01fc027d5"></a>
<a class="el" href="classpepr3d_1_1_geometry.html">Geometry</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ae47b18590297b63e6e0e5ae01fc027d5">getCurrentGeometry</a> ()</td></tr>
<tr class="memdesc:ae47b18590297b63e6e0e5ae01fc027d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the current <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a>. <br /></td></tr>
<tr class="separator:ae47b18590297b63e6e0e5ae01fc027d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a133b4db1b39af78dc68b5a9181eaabc7"><td class="memItemLeft" align="right" valign="top"><a id="a133b4db1b39af78dc68b5a9181eaabc7"></a>
<a class="el" href="classpepr3d_1_1_command_manager.html">CommandManager</a>&lt; <a class="el" href="classpepr3d_1_1_geometry.html">Geometry</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a133b4db1b39af78dc68b5a9181eaabc7">getCommandManager</a> ()</td></tr>
<tr class="memdesc:a133b4db1b39af78dc68b5a9181eaabc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the current <a class="el" href="classpepr3d_1_1_command_manager.html" title="CommandManager handles all undoable operations on target in the form of commands See.">CommandManager</a>. <br /></td></tr>
<tr class="separator:a133b4db1b39af78dc68b5a9181eaabc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7940de51f976d83f840e956be02481b3"><td class="memItemLeft" align="right" valign="top"><a id="a7940de51f976d83f840e956be02481b3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a7940de51f976d83f840e956be02481b3">showImportDialog</a> (const std::vector&lt; std::string &gt; &amp;extensions)</td></tr>
<tr class="memdesc:a7940de51f976d83f840e956be02481b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens the file dialog for import. <br /></td></tr>
<tr class="separator:a7940de51f976d83f840e956be02481b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82b879fdae70b8d0093c55c29bac2e5b"><td class="memItemLeft" align="right" valign="top"><a id="a82b879fdae70b8d0093c55c29bac2e5b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a82b879fdae70b8d0093c55c29bac2e5b">drawTooltipOnHover</a> (const std::string &amp;label, const std::string &amp;shortcut=&quot;&quot;, const std::string &amp;description=&quot;&quot;, const std::string &amp;disabled=&quot;&quot;, glm::vec2 position=glm::vec2(-1.0f), glm::vec2 pivot=glm::vec2(0.0f))</td></tr>
<tr class="memdesc:a82b879fdae70b8d0093c55c29bac2e5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws a tooltip if the previous ImGui item was hovered. Optionally you can set a custom position and pivot point, if they are not provided, the tooltip will hover above the item. <br /></td></tr>
<tr class="separator:a82b879fdae70b8d0093c55c29bac2e5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae60f75eac8ad5d0ffda1541122c713a0"><td class="memItemLeft" align="right" valign="top"><a id="ae60f75eac8ad5d0ffda1541122c713a0"></a>
<a class="el" href="classpepr3d_1_1_font_storage.html">FontStorage</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ae60f75eac8ad5d0ffda1541122c713a0">getFontStorage</a> ()</td></tr>
<tr class="memdesc:ae60f75eac8ad5d0ffda1541122c713a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the <a class="el" href="classpepr3d_1_1_font_storage.html" title="Keeps pointers to all fonts used in the user interface (regular, small, and icons)">FontStorage</a>. <br /></td></tr>
<tr class="separator:ae60f75eac8ad5d0ffda1541122c713a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21f4278d6d389508667b7a6a7b984c8b"><td class="memItemLeft" align="right" valign="top"><a id="a21f4278d6d389508667b7a6a7b984c8b"></a>
const <a class="el" href="classpepr3d_1_1_hotkeys.html">Hotkeys</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a21f4278d6d389508667b7a6a7b984c8b">getHotkeys</a> () const</td></tr>
<tr class="memdesc:a21f4278d6d389508667b7a6a7b984c8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a reference to the <a class="el" href="classpepr3d_1_1_hotkeys.html" title="All hotkeys and their corresponding actions.">Hotkeys</a>. <br /></td></tr>
<tr class="separator:a21f4278d6d389508667b7a6a7b984c8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adafee6ac798a97a338f1de8b5cece5d4"><td class="memItemLeft" align="right" valign="top"><a id="adafee6ac798a97a338f1de8b5cece5d4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#adafee6ac798a97a338f1de8b5cece5d4">pushDialog</a> (const <a class="el" href="classpepr3d_1_1_dialog.html">pepr3d::Dialog</a> &amp;dialog)</td></tr>
<tr class="memdesc:adafee6ac798a97a338f1de8b5cece5d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pushes a new dialog to the priority queue of the application. If it is a fatal error dialog, all other rendering is stopped (but only since the next frame). <br /></td></tr>
<tr class="separator:adafee6ac798a97a338f1de8b5cece5d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a21c18b808ee9cc2033f8a41ff64329"><td class="memItemLeft" align="right" valign="top"><a id="a3a21c18b808ee9cc2033f8a41ff64329"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a3a21c18b808ee9cc2033f8a41ff64329">saveProject</a> ()</td></tr>
<tr class="memdesc:a3a21c18b808ee9cc2033f8a41ff64329"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves the .p3d serialized file of the current <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a> to the same file as was used previously. If it was not saved yet, behaves the same as saveProjectAs. <br /></td></tr>
<tr class="separator:a3a21c18b808ee9cc2033f8a41ff64329"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96e83b00512d96b952d231e2db1a634b"><td class="memItemLeft" align="right" valign="top"><a id="a96e83b00512d96b952d231e2db1a634b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a96e83b00512d96b952d231e2db1a634b">saveProjectAs</a> ()</td></tr>
<tr class="memdesc:a96e83b00512d96b952d231e2db1a634b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a file dialog to save the .p3d serialized file of the current <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a>. <br /></td></tr>
<tr class="separator:a96e83b00512d96b952d231e2db1a634b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab805488ee0fd1ec3548e92667e6ad248"><td class="memItemLeft" align="right" valign="top"><a id="ab805488ee0fd1ec3548e92667e6ad248"></a>
ci::fs::path&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ab805488ee0fd1ec3548e92667e6ad248">getRequiredAssetPath</a> (const ci::fs::path &amp;relativePath)</td></tr>
<tr class="memdesc:ab805488ee0fd1ec3548e92667e6ad248"><td class="mdescLeft">&#160;</td><td class="mdescRight">Behaves same as Cinder's getAssetPath, but in this case, if the asset is not found, a fatal error <a class="el" href="classpepr3d_1_1_dialog.html" title="Represents a modal dialog shown to a user in the user interface in front of everything else.">Dialog</a> is shown to the user. The fatal error <a class="el" href="classpepr3d_1_1_dialog.html" title="Represents a modal dialog shown to a user in the user interface in front of everything else.">Dialog</a> also causes the application to terminate rendering. <br /></td></tr>
<tr class="separator:ab805488ee0fd1ec3548e92667e6ad248"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfab9e02ede45fc96c2716370fdda96c"><td class="memItemLeft" align="right" valign="top"><a id="acfab9e02ede45fc96c2716370fdda96c"></a>
ci::DataSourceRef&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#acfab9e02ede45fc96c2716370fdda96c">loadRequiredAsset</a> (const ci::fs::path &amp;relativePath)</td></tr>
<tr class="memdesc:acfab9e02ede45fc96c2716370fdda96c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Behaves same as Cinder's loadAsset, but in this case, if the asset is not found, a fatal error <a class="el" href="classpepr3d_1_1_dialog.html" title="Represents a modal dialog shown to a user in the user interface in front of everything else.">Dialog</a> is shown to the user. The fatal error <a class="el" href="classpepr3d_1_1_dialog.html" title="Represents a modal dialog shown to a user in the user interface in front of everything else.">Dialog</a> also causes the application to terminate rendering. <br /></td></tr>
<tr class="separator:acfab9e02ede45fc96c2716370fdda96c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dcd1d98fa39ff7769fff445f7e5563c"><td class="memTemplParams" colspan="2"><a id="a4dcd1d98fa39ff7769fff445f7e5563c"></a>
template&lt;typename OperationFunc , typename PostOperationFunc &gt; </td></tr>
<tr class="memitem:a4dcd1d98fa39ff7769fff445f7e5563c"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a4dcd1d98fa39ff7769fff445f7e5563c">enqueueSlowOperation</a> (OperationFunc operation, PostOperationFunc postOperation, bool showIndicator=true)</td></tr>
<tr class="memdesc:a4dcd1d98fa39ff7769fff445f7e5563c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Schedules <code>operation</code> to be executed in a separate thread in a thread pool. If <code>showIndicator</code> is true, displays a progress indicator, which disables user interaction with the application. After the <code>operation</code> is finished, <code>postOperation</code> is executed in the main thread of the application. Finally, the progress indicator is hidden. <br /></td></tr>
<tr class="separator:a4dcd1d98fa39ff7769fff445f7e5563c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd1be24404f0c0b26517970c77212603"><td class="memItemLeft" align="right" valign="top"><a id="afd1be24404f0c0b26517970c77212603"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#afd1be24404f0c0b26517970c77212603">getGeometryFileName</a> () const</td></tr>
<tr class="memdesc:afd1be24404f0c0b26517970c77212603"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the path to the current <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a> file. <br /></td></tr>
<tr class="separator:afd1be24404f0c0b26517970c77212603"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a2cdfe5b197e302f0097e62cb7ba7c47c"><td class="memItemLeft" align="right" valign="top"><a id="a2cdfe5b197e302f0097e62cb7ba7c47c"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a2cdfe5b197e302f0097e62cb7ba7c47c">prepareSettings</a> (<a class="el" href="classpepr3d_1_1_settings.html">Settings</a> *settings)</td></tr>
<tr class="memdesc:a2cdfe5b197e302f0097e62cb7ba7c47c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by Cinder. Prepare settings before setting up the application. <br /></td></tr>
<tr class="separator:a2cdfe5b197e302f0097e62cb7ba7c47c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09c365abb40896d8d680b311b352c726"><td class="memItemLeft" align="right" valign="top"><a id="a09c365abb40896d8d680b311b352c726"></a>
::ThreadPool &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a09c365abb40896d8d680b311b352c726">getThreadPool</a> ()</td></tr>
<tr class="memdesc:a09c365abb40896d8d680b311b352c726"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a single instance of the ThreadPool. <br /></td></tr>
<tr class="separator:a09c365abb40896d8d680b311b352c726"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a33cbcb0bc0f82a9c5e999896790327da"><td class="memItemLeft" align="right" valign="top"><a id="a33cbcb0bc0f82a9c5e999896790327da"></a>
const std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>supportedImportExtensions</b> = {&quot;stl&quot;, &quot;obj&quot;, &quot;ply&quot;}</td></tr>
<tr class="separator:a33cbcb0bc0f82a9c5e999896790327da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dc274ba0f11ff91cef2cebb39dad823"><td class="memItemLeft" align="right" valign="top"><a id="a6dc274ba0f11ff91cef2cebb39dad823"></a>
const std::vector&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>supportedOpenExtensions</b> = {&quot;p3d&quot;}</td></tr>
<tr class="separator:a6dc274ba0f11ff91cef2cebb39dad823"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:ab109e61da72a727f217fa9e715642c42"><td class="memItemLeft" align="right" valign="top"><a id="ab109e61da72a727f217fa9e715642c42"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ab109e61da72a727f217fa9e715642c42">setupLogging</a> ()</td></tr>
<tr class="memdesc:ab109e61da72a727f217fa9e715642c42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setups Cinder logging (warnings and errors in Release) and <a class="el" href="classpepr3d_1_1_fatal_logger.html" title="Cinder logger which only logs events with ci::log::Level::LEVEL_FATAL.">FatalLogger</a>. <br /></td></tr>
<tr class="separator:ab109e61da72a727f217fa9e715642c42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e368d949ee47ce6466d2abd992e9e9f"><td class="memItemLeft" align="right" valign="top"><a id="a2e368d949ee47ce6466d2abd992e9e9f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a2e368d949ee47ce6466d2abd992e9e9f">setupFonts</a> ()</td></tr>
<tr class="memdesc:a2e368d949ee47ce6466d2abd992e9e9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setups ImGui fonts and <a class="el" href="classpepr3d_1_1_font_storage.html" title="Keeps pointers to all fonts used in the user interface (regular, small, and icons)">FontStorage</a>. <br /></td></tr>
<tr class="separator:a2e368d949ee47ce6466d2abd992e9e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2ab8320c6d5bc477b5b44a518e32dbd"><td class="memItemLeft" align="right" valign="top"><a id="ac2ab8320c6d5bc477b5b44a518e32dbd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ac2ab8320c6d5bc477b5b44a518e32dbd">setupIcon</a> ()</td></tr>
<tr class="memdesc:ac2ab8320c6d5bc477b5b44a518e32dbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setups a WinAPI icon of the main window (only on Windows). <br /></td></tr>
<tr class="separator:ac2ab8320c6d5bc477b5b44a518e32dbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b26419f0dc484c466b4b65686cb09d5"><td class="memItemLeft" align="right" valign="top"><a id="a3b26419f0dc484c466b4b65686cb09d5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a3b26419f0dc484c466b4b65686cb09d5">willResignActive</a> ()</td></tr>
<tr class="memdesc:a3b26419f0dc484c466b4b65686cb09d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the main window loses focus. <br /></td></tr>
<tr class="separator:a3b26419f0dc484c466b4b65686cb09d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2692d734374d2a74c63b45f0856baf1a"><td class="memItemLeft" align="right" valign="top"><a id="a2692d734374d2a74c63b45f0856baf1a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a2692d734374d2a74c63b45f0856baf1a">didBecomeActive</a> ()</td></tr>
<tr class="memdesc:a2692d734374d2a74c63b45f0856baf1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the main window becomes focused. <br /></td></tr>
<tr class="separator:a2692d734374d2a74c63b45f0856baf1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a9f2357108cc7c32b640559723f5270"><td class="memItemLeft" align="right" valign="top"><a id="a5a9f2357108cc7c32b640559723f5270"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a5a9f2357108cc7c32b640559723f5270">isWindowObscured</a> ()</td></tr>
<tr class="memdesc:a5a9f2357108cc7c32b640559723f5270"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the main window is obscured by another window or windows (only on Windows). Window is obscured if one of the following is true: 1) if the window is minimized, and/or 2) if the top left corner, middle, and bottom right corner are obscured by a different window. <br /></td></tr>
<tr class="separator:a5a9f2357108cc7c32b640559723f5270"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c723a7f716f24de66df40affcd63add"><td class="memItemLeft" align="right" valign="top"><a id="a8c723a7f716f24de66df40affcd63add"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a8c723a7f716f24de66df40affcd63add">showLoadingErrorDialog</a> ()</td></tr>
<tr class="memdesc:a8c723a7f716f24de66df40affcd63add"><td class="mdescLeft">&#160;</td><td class="mdescRight">Detects if any error happened during the loading of new <a class="el" href="classpepr3d_1_1_geometry.html" title="The whole geometry of a model that the user is painting.">Geometry</a>. Returns true if no errors occured (or only a warning occured). <br /></td></tr>
<tr class="separator:a8c723a7f716f24de66df40affcd63add"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8792c0f1e1c151da1d7fa2b1ff05643d"><td class="memItemLeft" align="right" valign="top"><a id="a8792c0f1e1c151da1d7fa2b1ff05643d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#a8792c0f1e1c151da1d7fa2b1ff05643d">loadHotkeysFromFile</a> (const std::string &amp;path)</td></tr>
<tr class="memdesc:a8792c0f1e1c151da1d7fa2b1ff05643d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Loads <a class="el" href="classpepr3d_1_1_hotkeys.html" title="All hotkeys and their corresponding actions.">Hotkeys</a> from a file. <br /></td></tr>
<tr class="separator:a8792c0f1e1c151da1d7fa2b1ff05643d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0fb0391cc13ce9fab835893246a945b"><td class="memItemLeft" align="right" valign="top"><a id="ab0fb0391cc13ce9fab835893246a945b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpepr3d_1_1_main_application.html#ab0fb0391cc13ce9fab835893246a945b">saveHotkeysToFile</a> (const std::string &amp;path)</td></tr>
<tr class="memdesc:ab0fb0391cc13ce9fab835893246a945b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves <a class="el" href="classpepr3d_1_1_hotkeys.html" title="All hotkeys and their corresponding actions.">Hotkeys</a> to a file. <br /></td></tr>
<tr class="separator:ab0fb0391cc13ce9fab835893246a945b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a288e20cefd96cbcf09587c7dc5fbdc87"><td class="memItemLeft" align="right" valign="top"><a id="a288e20cefd96cbcf09587c7dc5fbdc87"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>mShouldSkipDraw</b> = false</td></tr>
<tr class="separator:a288e20cefd96cbcf09587c7dc5fbdc87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72965ea8c0eaa97ea8a932d2c6354fcf"><td class="memItemLeft" align="right" valign="top"><a id="a72965ea8c0eaa97ea8a932d2c6354fcf"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>mIsFocused</b> = true</td></tr>
<tr class="separator:a72965ea8c0eaa97ea8a932d2c6354fcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0388ef1646751c20f605438233cdbc9"><td class="memItemLeft" align="right" valign="top"><a id="ae0388ef1646751c20f605438233cdbc9"></a>
ci::gl::FboRef&#160;</td><td class="memItemRight" valign="bottom"><b>mFramebuffer</b></td></tr>
<tr class="separator:ae0388ef1646751c20f605438233cdbc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35e059c6c2cb5f40861410c8e54a7571"><td class="memItemLeft" align="right" valign="top"><a id="a35e059c6c2cb5f40861410c8e54a7571"></a>
<a class="el" href="classpepr3d_1_1_hotkeys.html">Hotkeys</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mHotkeys</b></td></tr>
<tr class="separator:a35e059c6c2cb5f40861410c8e54a7571"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25c9d28d19d85ba80d7507ba4e3bfebd"><td class="memItemLeft" align="right" valign="top"><a id="a25c9d28d19d85ba80d7507ba4e3bfebd"></a>
glm::vec2&#160;</td><td class="memItemRight" valign="bottom"><b>mLastTooltipSize</b> = glm::vec2(0.0f)</td></tr>
<tr class="separator:a25c9d28d19d85ba80d7507ba4e3bfebd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96589bd3e706609668b3dfe0f62f947e"><td class="memItemLeft" align="right" valign="top"><a id="a96589bd3e706609668b3dfe0f62f947e"></a>
peprimgui::PeprImGui&#160;</td><td class="memItemRight" valign="bottom"><b>mImGui</b></td></tr>
<tr class="separator:a96589bd3e706609668b3dfe0f62f947e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addc4686c64248597534a30ae3591e365"><td class="memItemLeft" align="right" valign="top"><a id="addc4686c64248597534a30ae3591e365"></a>
<a class="el" href="classpepr3d_1_1_font_storage.html">FontStorage</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mFontStorage</b></td></tr>
<tr class="separator:addc4686c64248597534a30ae3591e365"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba3ae7115af28d3c393d9f7ca12fa0bb"><td class="memItemLeft" align="right" valign="top"><a id="aba3ae7115af28d3c393d9f7ca12fa0bb"></a>
<a class="el" href="classpepr3d_1_1_toolbar.html">Toolbar</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mToolbar</b></td></tr>
<tr class="separator:aba3ae7115af28d3c393d9f7ca12fa0bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab47bfd08d08aad45846767edea3791c8"><td class="memItemLeft" align="right" valign="top"><a id="ab47bfd08d08aad45846767edea3791c8"></a>
<a class="el" href="classpepr3d_1_1_side_pane.html">SidePane</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mSidePane</b></td></tr>
<tr class="separator:ab47bfd08d08aad45846767edea3791c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6ade9e5898bd8e926e59c36af3aadf0"><td class="memItemLeft" align="right" valign="top"><a id="ad6ade9e5898bd8e926e59c36af3aadf0"></a>
<a class="el" href="classpepr3d_1_1_model_view.html">ModelView</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mModelView</b></td></tr>
<tr class="separator:ad6ade9e5898bd8e926e59c36af3aadf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a584e07294abcf01b259bfa7b0e326965"><td class="memItemLeft" align="right" valign="top"><a id="a584e07294abcf01b259bfa7b0e326965"></a>
<a class="el" href="classpepr3d_1_1_progress_indicator.html">ProgressIndicator</a>&#160;</td><td class="memItemRight" valign="bottom"><b>mProgressIndicator</b></td></tr>
<tr class="separator:a584e07294abcf01b259bfa7b0e326965"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8197cbb3456a81fbdb0d4cf501e85518"><td class="memItemLeft" align="right" valign="top"><a id="a8197cbb3456a81fbdb0d4cf501e85518"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>mShowDemoWindow</b> = false</td></tr>
<tr class="separator:a8197cbb3456a81fbdb0d4cf501e85518"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fc071f761e157f98066cf1ca9f3b2de"><td class="memItemLeft" align="right" valign="top"><a id="a5fc071f761e157f98066cf1ca9f3b2de"></a>
std::priority_queue&lt; <a class="el" href="classpepr3d_1_1_dialog.html">pepr3d::Dialog</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>mDialogQueue</b></td></tr>
<tr class="separator:a5fc071f761e157f98066cf1ca9f3b2de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a350c54b92a68ddf70b7332eeecdee4b7"><td class="memItemLeft" align="right" valign="top"><a id="a350c54b92a68ddf70b7332eeecdee4b7"></a>
ToolsVector&#160;</td><td class="memItemRight" valign="bottom"><b>mTools</b></td></tr>
<tr class="separator:a350c54b92a68ddf70b7332eeecdee4b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd3f6abd8bd685f463606ddc6ce07c59"><td class="memItemLeft" align="right" valign="top"><a id="abd3f6abd8bd685f463606ddc6ce07c59"></a>
ToolsVector::iterator&#160;</td><td class="memItemRight" valign="bottom"><b>mCurrentToolIterator</b></td></tr>
<tr class="separator:abd3f6abd8bd685f463606ddc6ce07c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9b98e4e97ef223e56901a7adf438006"><td class="memItemLeft" align="right" valign="top"><a id="ad9b98e4e97ef223e56901a7adf438006"></a>
std::shared_ptr&lt; <a class="el" href="classpepr3d_1_1_geometry.html">Geometry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>mGeometry</b></td></tr>
<tr class="separator:ad9b98e4e97ef223e56901a7adf438006"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5be480a3d12e8f757179949d7b9c4c3c"><td class="memItemLeft" align="right" valign="top"><a id="a5be480a3d12e8f757179949d7b9c4c3c"></a>
std::shared_ptr&lt; <a class="el" href="classpepr3d_1_1_geometry.html">Geometry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>mGeometryInProgress</b></td></tr>
<tr class="separator:a5be480a3d12e8f757179949d7b9c4c3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad64561adc639db4aa6b8435a42b0d18e"><td class="memItemLeft" align="right" valign="top"><a id="ad64561adc639db4aa6b8435a42b0d18e"></a>
std::unique_ptr&lt; <a class="el" href="classpepr3d_1_1_command_manager.html">CommandManager</a>&lt; <a class="el" href="classpepr3d_1_1_geometry.html">Geometry</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>mCommandManager</b></td></tr>
<tr class="separator:ad64561adc639db4aa6b8435a42b0d18e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86fa5e0f7cd52754e0b2d1cf0a15db35"><td class="memItemLeft" align="right" valign="top"><a id="a86fa5e0f7cd52754e0b2d1cf0a15db35"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>mGeometryFileName</b></td></tr>
<tr class="separator:a86fa5e0f7cd52754e0b2d1cf0a15db35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7cd61ba12de9b969d87c63388fb2c2a"><td class="memItemLeft" align="right" valign="top"><a id="ac7cd61ba12de9b969d87c63388fb2c2a"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>mShouldSaveAs</b> = true</td></tr>
<tr class="separator:ac7cd61ba12de9b969d87c63388fb2c2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa071bb750bf3e9208764d64f6ab3cfed"><td class="memItemLeft" align="right" valign="top"><a id="aa071bb750bf3e9208764d64f6ab3cfed"></a>
std::size_t&#160;</td><td class="memItemRight" valign="bottom"><b>mLastVersionSaved</b> = std::numeric_limits&lt;std::size_t&gt;::max()</td></tr>
<tr class="separator:aa071bb750bf3e9208764d64f6ab3cfed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b9d7b9f1eda86cbaf509fd2be5bc5ab"><td class="memItemLeft" align="right" valign="top"><a id="a2b9d7b9f1eda86cbaf509fd2be5bc5ab"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>mIsGeometryDirty</b> = false</td></tr>
<tr class="separator:a2b9d7b9f1eda86cbaf509fd2be5bc5ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-attribs"></a>
Static Private Attributes</h2></td></tr>
<tr class="memitem:a1171d4775a0e1cf5d00dd4995eff2262"><td class="memItemLeft" align="right" valign="top"><a id="a1171d4775a0e1cf5d00dd4995eff2262"></a>
::ThreadPool&#160;</td><td class="memItemRight" valign="bottom"><b>sThreadPool</b></td></tr>
<tr class="separator:a1171d4775a0e1cf5d00dd4995eff2262"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The main Cinder-based application, represents a window, handles events, thread pool, active tools, geometry, etc. </p>
</div><hr/>The documentation for this class was generated from the following files:<ul>
<li>D:/Home/MFF/1-Mgr/projekt/pepr3d/src/ui/<a class="el" href="_main_application_8h_source.html">MainApplication.h</a></li>
<li>D:/Home/MFF/1-Mgr/projekt/pepr3d/src/ui/MainApplication.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacepepr3d.html">pepr3d</a></li><li class="navelem"><a class="el" href="classpepr3d_1_1_main_application.html">MainApplication</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>
